1. Field of the Invention
The present invention relates to an image processing apparatus, an image processing system, and an image processing method for embedding watermark information and/or detecting embedded watermark information in order to, for example, authenticate an original image; a control program for allowing a computer to execute the embedding and/or detection processing; a computer-readable recording medium having the control program stored thereon; and an electronic information apparatus using the same, for example, a digital camera.
2. Description of the Related Art
The above-mentioned type of image processing apparatus recognizes whether an image is an original image or not by embedding digital watermark information (hereinafter, also referred to simply as “watermark information”), which does not have any direct influence on the image, and then detecting the embedded watermark information. There are two types of watermark information, i.e., strong watermark information and weak watermark information. Strong watermark information is not erased even when the image data in which the watermark information is embedded is changed, and thus is used for, for example, copyright protection. Strong watermark information, when verified, can be used to assert copyright of an original image. Weak watermark information is erased when the image data in which the watermark information is embedded is changed, and thus is used for authentication of an original image. Herein, the term “digital watermark information” or “watermark information” refers to weak watermark information.
M. Yeung and F. Mintzer proposed a principle of weak watermark technology in “An Invisible Watermarking Technique for Image Verification”, Proceedings of ICIP, Santa Barbara, Calif., Oct. 26-29, 1997, Vol. 2, pp. 680-683”. FIGS. 11 and 12 show technology for embedding and detecting watermark information proposed in the above-mentioned publication (hereinafter, referred to as “conventional technology 1”).
FIG. 11 is a functional diagram illustrating a procedure performed by a conventional watermark information embedding apparatus 100 used in conventional technology 1. The watermark information embedding apparatus 100 embeds watermark image information (watermark information) in original image information, so as to obtain watermarked image information. This will be described in more detail.
For an original image and a binary watermark image having the same size as that of the original image, a watermark extraction function is obtained. The original image is processed by calculations defined by the extraction function on a pixel-by-pixel basis. A look-up table LUT is used as a random number table 101 which uses a random number as a key. The look-up table LUT receives, for example, an 8-bit input for a gray-scale image, and provides a 2-bit (“1” or “0”) output, on a pixel-by-pixel basis. The result of the calculation performed on the original image is input to the look-up table LUT and binarized. The binary value thus obtained is compared with a binary value obtained from the watermark information to be embedded in the original image by a comparison section 102. When the two binary values match each other, the pixel value of the original image (the 8-bit gray-scale value) is kept as it is. When the two binary values do not match each other, the pixel value of the original image is repeatedly adjusted by a pixel value adjusting section 103 until the two binary values match each other. Thus, a watermarked image is created.
FIG. 12 is a functional diagram illustrating a procedure performed by a conventional watermark information detection apparatus 110 used in conventional technology 1. Referring to FIG. 12, the watermark information detection apparatus 110 includes a random number table section 111 (look-up table LUT) which is similar to the random number table section 101 described above. The random number table section 111 is used to extract watermark information (watermark image) from the watermarked image information. More particularly, the watermarked image is processed by calculations defined by the extraction function obtained at the time of embedding, and the obtained calculation result is mapped by the random number table 111. Thus, the watermark image is obtained. The resultant binary image is examined so as to check whether the original image has been changed.
P. W. Wong proposed weak watermark technology in P. W. Wong, “A Public Key Watermark for Image Verification and Authentication”, Proceedings of ICIP, 1998, Chicago, pp. 455-459. FIGS. 13 and 14 show technology for embedding and detecting watermark information proposed in the above-mentioned publication (hereinafter, referred to as “conventional technology 2”).
FIG. 13 is a functional block diagram illustrating a procedure performed by a conventional watermark information embedding apparatus 200 used in conventional technology 2. The watermark information embedding apparatus 200 embeds watermark image information as follows.
A gray-scale original image and a binary watermark image are each divided into blocks each having n×n pixels (for example, 8×8 pixels). “n” is a natural number. The LSB (least significant bit) of the value of each block is set to zero. Then, based on parameters such as the remaining upper bits and the image size, a hash function is created so as to generate a value reflecting the block. The first n×n bits from the bit stream of the generated value are selected. An exclusive-OR (EXOR) of the selected n×n bits and the value of the watermark information corresponding to the selected n×n bits is obtained. The calculation result is encrypted using a secret key of a public key cryptography system (for example, RSA). The calculation result is written in the LSB of the original image. Thus, the embedding of the watermark information is completed.
FIG. 14 is a functional block diagram illustrating a procedure performed by a conventional watermark information detection apparatus 210 used in conventional technology 2. Referring to FIG. 14, the watermark information extraction is performed on a block-by-block basis like the embedding of the watermark information. Using the same hash function, bits other than the LSBs of the watermark image information, the image size and other sequences are calculated, and the first n×n bits of the calculation result are selected. Then, the LSBs are translated using the public key. An exclusive-OR (EXOR) of the resultant bit stream and the selected bit stream is obtained. The resultant logical operation result is the extracted watermark image information.
Japanese Laid-Open Publication No. 2000-50048 entitled “Image Processing Device” was proposed as conventional technology 3. This image processing device includes a compression/watermark addition section. The compression/watermark addition section includes block dividing means for dividing one original image into a plurality of pixel blocks; frequency transform means for transforming digital image data of each pixel block into a frequency so as to generate frequency image data; quantization means for quantizing the frequency image data so as to generate quantized data; a bit embedding section for receiving a quantized coefficient matrix obtained from the quantized data, information to be embedded (watermark information) and key information, so as to add the watermark information to one of the quantized coefficients in the matrix which is determined by a random number based on prescribed key information; and encoding means for encoding the embedded quantized data so as to generate compressed data. The bit embedding section includes a random number sequence generation section for generating a random number sequence having the key information as an initial value, a determination section for determining one quantization coefficient to be embedded from the quantized coefficient matrix as the quantized frequency image using the generated random number sequence, and a changing section for changing the determined quantized coefficient to be embedded so as to provide an embedded quantized coefficient matrix.
The conventional weak watermark technology (conventional technology 1) of Yeung et al. uses the values generated by the look-up table LUT using random numbers. The pixel value is adjusted so as to reflect the binary value of the watermark information. This method involves a problem in that the image quality of the watermarked image may be adversely affected depending on the value generated by the look-up table LUT.
With reference to FIG. 15, the adverse effect on the watermarked image will be described. FIG. 15 does not show the extraction function for the sake of simplicity.
As shown in FIG. 15, an 8-bit input of agray-scale original image (0 through 255) received by the look-up table LUT is randomly output as “1” or “0”. When this binary output matches the binary value of the watermark information, the pixel value of the original image is kept as it is. When the two binary values do not match each other, the pixel value is repeatedly adjusted until the two values match each other.
For example, it is assumed that the gray-scale input is “020” and the binary output is “1”. Assuming that the value of the watermark information is “0”, the two binary values do not match each other. If the next gray-scale value “021” and the binary output is “0”, the image quality is not adversely affected since there is no significant difference between the gray-scale values “020” and “021”. If there is no binary output “0” corresponding to the subsequent gray-scale values “021” to “101”, the gray-scale value “020” needs to be adjusted to the gray-scale value “101” although these two values are significantly different from each other. Such an adjustment of a gray-scale value to a significantly different value adversely influences the image quality of the original image. Furthermore, according to conventional technology 1, the outputs corresponding to the gray-scale values 0 through 255 of the original image are merely roughly divided into “1” and “0”. Even though the original image is changed within a range of the 8-bit inputs corresponding to the output “1”, such a change cannot be detected since the output is still “1” despite the change in the original image.
The weak watermark technology proposed by Wong (conventional technology 2) has the following problem. Watermark information is embedded in the LSBs of a flat image in which the gray-scale values (for example, 8-bit values) of the pixels are the same, on a block-by-block basis, each block having n×n pixels. According to this method, the image data is uniform except for the watermark information. Therefore, the method in which the watermark has been embedded, the watermark information itself, and the like are likely to be revealed. This may give a clue to assist forgery of the watermark information.
Conventional technologies 1 and 2 cannot be used for data-compressed images. Uncompressed data requires enormous storage capacity, and thus in actuality, image data is compressed in one way or another. The conventional technologies 1 and 2 are unpractical.
According to conventional technology 3, weak watermark technology is applied to data-compressed images. However, it is determined at random at which position of the quantized coefficient matrix in each divided block (for example, 8×8 pixels) the watermark information is to be embedded. Therefore, when the original data is changed at positions other than the position having the watermark information embedded therein, such a change cannot be detected. In addition, in the case where the watermark information is embedded the position of a DC component, which influences the image quality, instead of the position of an AC component, such a change may influence the image quality.